package com.simtop.hj.service;

import com.github.pagehelper.PageInfo;
import com.simtop.hj.common.ServerResponse;
import com.simtop.hj.pojo.*;

import java.util.List;

public interface UserService {
    User login(User user);

    List<Role> getRole();

    ServerResponse<String> register(User user);

    ServerResponse<String> generateCheckCode(String email);

    ServerResponse<String> forgetSendEmailCode(String email);

    ServerResponse<String> updatePassword(User user);

    void expertLogin(User expertLoginUser);

    ServerResponse<PageInfo> searchUser(Integer pageNum, Integer pageSize, String username,String subjects,String loginName,String studyYear);

    ServerResponse deleteUser(Integer id);


    void deleteVisitorRole();

    Integer getUserNums();

    List<HJPP> getHJPP();

    List<DSHJ> getDSHJ();

    List<WBHJ> getWBHJ();

    List<WineWorld> getIndexData();

    void createReportCard(Grade grade);

    ServerResponse addComment(Grade grade);


    ServerResponse<PageInfo<Grade>> getGrade(Integer pageSize, Integer pageNum,User user);

    Integer getExperiment();

    Echarts3 selectScoreUser();

    void insertRedisCiYun();

    ServerResponse updateUser(User user);

    ServerResponse addUser(User user);

    List<DownGrade> downLoadGrade(User user);

    ServerResponse deleteGrade(Integer gradeId);

    ServerResponse addScore(Grade grade);

    void registerUser(User user);
}
